package com.wcs.exam.controller.admin.req;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;

/**
 * <p>
 * Admin-后台用户信息-保存-请求参数
 * </p>
 *
 * @author wcs
 * @since 2024-07-06
 */
@Getter
@Setter
@Accessors(chain = true)
@Schema(description = "Admin-后台用户信息-保存-请求参数")
public class AdminSysUserSaveReq implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    @Size(max = 11, message = "system.sys.user.mobile.length.max.limit.error")
    @NotBlank(message = "system.sys.user.mobile.not.null")
    @Schema(description = "手机(内容限制：1~11)", requiredMode = Schema.RequiredMode.REQUIRED)
    private String mobile;

    @NotBlank(message = "system.sys.user.mobile.psw.not.null")
    @Schema(description = "登录密码", requiredMode = Schema.RequiredMode.REQUIRED)
    private String mobilePwdEncrypt;

    @Size(max = 30, message = "system.sys.user.real.name.length.max.limit.error")
    @NotBlank(message = "system.sys.user.real.name.not.null")
    @Schema(description = "真实姓名(内容限制：1~30)", requiredMode = Schema.RequiredMode.REQUIRED)
    private String realName;

    @Size(max = 200, message = "system.sys.user.remark.length.max.limit.error")
    @Schema(description = "备注(内容限制：<200)")
    private String remark;

}
